// loading插件
import LoadingComponentOption from './Loading.vue'

const loading = {
  install (Vue) {
    // 定义组件的loading类
    const LoadingClass = Vue.extend(LoadingComponentOption)
    // 这个是组件实例
    const loadingComponent = new LoadingClass()
    // 得到这个组件中 的 html 结构 并插入到body中
    const loadingTpl = loadingComponent.$mount()
    // $mount方法会让 组件 的template编译成真实dom $el属性保存 真实dom结构
    document.body.appendChild(loadingTpl.$el)
    Vue.prototype.$showLoading = () => {
      loadingComponent.isShow = true
    }
    Vue.prototype.$hideLoading = () => {
      loadingComponent.isShow = false
    }
  }
}
export default loading
